package com.dbf.site.client;

import com.dbf.site.client.main.presenter.EastPresenter;
import com.dbf.site.client.main.presenter.MainPresenter;
import com.dbf.site.client.main.presenter.WelcomePresenter;
import com.dbf.site.client.main.view.MainView;
import com.dbf.site.client.message.presenter.MessagePresenter;
import com.dbf.site.client.shell.presenter.ShellPresenter;
import com.dbf.site.client.user.model.UserModel;
import com.dbf.site.client.user.presenter.UserProfilePresenter;
import com.google.gwt.user.client.ui.Widget;
import com.mvp4g.client.annotation.Debug;
import com.mvp4g.client.annotation.Event;
import com.mvp4g.client.annotation.Events;
import com.mvp4g.client.annotation.Start;
import com.mvp4g.client.event.EventBus;

@Events(startPresenter = MainPresenter.class, historyOnStart = false)
@Debug(logLevel = Debug.LogLevel.DETAILED)
public interface ForumEventBus extends EventBus {
	@Start
	@Event(handlers = {WelcomePresenter.class, EastPresenter.class,MessagePresenter.class})
	public void start();
	
	@Event(handlers ={MainPresenter.class})
	public void setWelcomeView(Widget widget);
	
	@Event(handlers ={MainPresenter.class})
	public void setEastView(Widget widget);
	
	@Event(handlers ={MainPresenter.class})
	public void setMessageView(Widget widget);

	
	@Event(handlers = {MessagePresenter.class})
	public void showList();
	
	
	//
//	@Event(handlers = ShellPresenter.class)
//	public void setProfileView(Widget widget);
	//
//	@Event(handlers = MainPresenter.class)
//	public void setMasterView(Widget widget);
//	@Event(handlers = { UserProfilePresenter.class })
//	public void start();
//	@Event(handlers = { UserProfilePresenter.class })
//	public void createNewUser(UserModel user);

}
